home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextDeveloper / Source / GNU / debug / Common / RegionManager.h < prev    next >
Text File  |  1994-11-29  |  1KB  |  38 lines

  1. #import "RelocManager.h"
  2.  
  3. typedef struct _Region {
  4.     Reloc reloc;
  5.     vm_prot_t protection;
  6.     unsigned char       *pages;
  7.     int pagesInvalid;
  8. } Region;
  9.  
  10. typedef void (TaskGoneCallBack());
  11.  
  12. #define PAGEINVALID (0x01 << 6)
  13.  
  14. @interface RegionManager : RelocManager
  15. {
  16.     vm_task_t task;
  17.     vm_size_t pageSize;
  18.     TaskGoneCallBack *taskGoneCallBack;
  19.     unsigned char *pages;
  20.     BOOL dontCombineRegions;
  21.     int regionsInvalid;
  22. }
  23.  
  24. +newTask: (vm_task_t)theTask;
  25. +newTask: (vm_task_t)theTask readInRegions: (BOOL)readRegions;
  26. -(int)putDataAt: (void *)start for: (int)numBytes from: (const void *)data;
  27. -(int)putDataAt: (void *)start for: (int)numBytes from: (const void *)data markOnly: (BOOL)markOnly;
  28. -(int)writeDataAt: (const void *)start for: (int)numBytes;
  29. -(int)writeDataAt: (const void *)start for: (int)numBytes reloc: (Region *)reloc;
  30. -(int)writeDataAt: (const void *)start for: (int)numBytes reloc: (Region *)region markOnly: (BOOL)markOnly;
  31. -(void)getStartPage: (void **)startPage andSize: (int *)sizePage
  32.          forPointer: (void *)pointer    andSize: (int)size;
  33. -(void)setTaskGoneCallBack: (TaskGoneCallBack *)theCallBack;
  34. -(BOOL)isTask;
  35. -(void)combineRegions: (BOOL)combineRegions;
  36. -(void)flushMarkedPages;
  37.  
  38. @end